pthread_cond_wait(3)

조건변수는 쓰레드간 동기화를 위해서 사용하는 장치로써, 공유되는 데이터의 안정을 보장하기 위한 용도로 주로 사용된다. 조건변수의 기본적인 작동방식은 다음과 같다. 하나의 쓰레드는 조건변수에 시그널이 전달될 때까지 특정영역에서 대기 상태에 놓이게 된다. 만약 다른 쓰레드가 조건변수에 시그널을 보낸다면 대기 상태에서 풀리고 다음 코드로 넘어가게 된다....

linux man page : pthread_detach - 실행중인 쓰레드를 분리 한다.

linux man page 실행중인 쓰레드를 detached(분리)상태로 만든다.#include int pthread_detach(pthread_t th); pthread_detach(pthread_detach()함수를 호출하는 외에도 pthread_create()시 pthread_attr_t에 detachstate를 지정해 줌으로써 ...

pthread_kill(3)

이 함수는 현재 쓰레드에 시그널newmask와 how 를 이용해서 시그널 마스크를 만든다. how는 SIG_BLOCK, SIG_UNBLOCK, SIG_SETMASK중 하나를 선택할 수 있다. SIG_BLOCK는 현재 설정된 시그널 마스크에 newmask를 추가하며 SIG_UNBLOCK는 현재 설정된 시그널 마스크에서 newmask를 제거하고 SIG_SETM...

linux man page : pthread_mutex_init - mutex 를 초기화 한다.

첫번째 인자인 mutex는 초기화 시킬 mutex객체이다. 초기화 시킬 때 뮤텍스의 특징을 정의할 수 있는데, 이는 두번째 인자인 attr를 통해서 이루어진다. 기본 뮤텍스 특징을 사용하길 원한다면 NULL을 이용하면 된다. 뮤텍스는 "fast", "recurisev", "error checking"의 3가지 종류중 하나를 선택할 수 있으며, 기본적으로 "...

pthread_mutex_lock(3)

mutex는 MUTual EXclusion(상호 배제)devide의 줄임말로 쓰레드간 공유하는 데이터 영역을 보호하기 위해서 사용한다. 데이터 영역의 보호는 critical section(임계 영역)을 만들고 임계 영역내에 단하나의 쓰레드만이 진입가능 하도록 하는 방식을 사용한다....

putpwent(3)

putpwent()함수는 stream에 연결된 파일에 패스워드 구조체 정보p를 이용해서 패스워드내용을 추가한다. passwd구조체는 에 다음과 같이 정의되어 있다....

qsort - 배열을 정렬한다.

qsort() 함수는 nmemb의 크기를 가지는 배열을 QuickSort(:12)한다. 배열의 요소는 size크기를 가진다. 마지막 인자로 정렬에 사용될 함수인 compar의 포인터를 넘겨준다. compar함수는 더 크면 0, 작거나 같으면 0보다 큰 수를 리턴하도록 만든다....

linux man page : syslog - system logger를 이용한 메시지 전송

syslog는 유닉스에서 제공하는 시스템 로거 (system logger)로, 유닉스 시스템이 관리하는 로그 시스템이다. 이 로그 시스템은 원격의 다른 유닉스 시스템에도 전달할 수 있다. closelog 함수는 시스템 로거를 닫기 위해서 사용한다....